home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 #2 / Ham Radio 2000 - Volume 2.iso / HAMV2 / MISC / HCAL-27 / COAXTRAP.BAS (.txt) < prev    next >
Encoding:
GW-BASIC  |  1997-01-27  |  7.4 KB  |  248 lines

  1. 10  'COAXTRAP - Antenna Trap Design - 31 JAN 94 rev. 24 SEP 96
  2. 20  IF EX$=""THEN EX$="EXIT"
  3. 30  CLS:KEY OFF
  4. 40  COLOR 7,0,1
  5. 50  UL$=STRING$(80,205)
  6. 60  ER$=STRING$(80,32)
  7. 70  U$="####.###"
  8. 80  V$="####.##"
  9. 90  Q$=CHR$(34)
  10. 100  PI=3.14159
  11. 110  LF=1/LOG(10)  'log conversion to base 10
  12. 120  DIM C$(50,7)   'coax specs.
  13. 130  '
  14. 140  '.....start
  15. 150  CLS
  16. 160  OPEN"I",1,"\data\coaxial.fil"
  17. 170  FOR Z=1 TO 50:FOR Y=1 TO 7
  18. 180  INPUT#1,Z$
  19. 190  IF RIGHT$(Z$,5)=" Foam"THEN Z$=LEFT$(Z$,LEN(Z$)-5)+"(f)"
  20. 200  IF RIGHT$(Z$,6)="Belden"THEN Z$=LEFT$(Z$,4)
  21. 210  C$(Z,Y)=Z$
  22. 220  NEXT Y:NEXT Z
  23. 230  CLOSE
  24. 240  FOR Y=1 TO 44
  25. 250  E=VAL(C$(Y,3))         'dielectric constant
  26. 260  Z=VAL(C$(Y,5))         'characteristic impedance
  27. 270  D=10^(Z*SQR(E)/138)
  28. 280  C=7.36*E/(LOG(D)*LF)   '>F/ft.
  29. 290  C$(Y,2)=STR$(C)
  30. 300  C$(Y,3)=C$(Y,4)
  31. 310  NEXT Y
  32. 320  '
  33. 330  COLOR 15,2
  34. 340  PRINT " COAXIAL CABLE TRAPS FOR MULTI-BAND ANTENNAS";
  35. 350  PRINT TAB(57);"by George Murphy VE3ERP ";
  36. 360  COLOR 1,0:PRINT STRING$(80,223);
  37. 370  COLOR 7,0
  38. 380  '
  39. 390  '.....text
  40. 400  PRINT TAB(7);
  41. 410  PRINT "This program is an adaptation of a program by Larry East W1HUE as ";
  42. 420  PRINT TAB(7);
  43. 430  PRINT "it appears in the ARRL Antenna Compendium, Volume 2, page 100."
  44. 440  PRINT
  45. 450  PRINT TAB(7);
  46. 460  PRINT "The program will calculate the turns required for an antenna trap"
  47. 470  PRINT TAB(7);
  48. 480  PRINT "made from coaxial cable. It also calculates and displays Inductive"
  49. 490  PRINT TAB(7);
  50. 500  PRINT "Reactance (XL), Capacitive Reactance (XC), Inductance (L), and"
  51. 510  PRINT TAB(7);
  52. 520  PRINT "Capacitance (C) values. Inputs required are coax type, coil form"
  53. 530  PRINT TAB(7);
  54. 540  PRINT "diameter and trap frequency."
  55. 550  PRINT
  56. 560  PRINT TAB(7);
  57. 570  PRINT "Cutting and trimming dimensions for the coax are also included."
  58. 580  PRINT
  59. 590  '
  60. 600  '.....diagram
  61. 610  T=12     'tab
  62. 620  COLOR 0,7
  63. 630  LOCATE ,T:PRINT "                                                         "
  64. 640  LOCATE ,T:PRINT "       coaxial cable before winding into a coil SOUNDCOLOR       "
  65. 650  LOCATE ,T:PRINT "                                                 CALL       "
  66. 660  LOCATE ,T:PRINT " in DEFDBLSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDCOLOR                                    CALL       "
  67. 670  LOCATE ,T:PRINT "           ERRSTEPTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENshieldTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENOPTIONDEFSNGSOUND'       "
  68. 680  LOCATE ,T:PRINT "         VARPTRSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDinner conductorSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDDEFDBL out "
  69. 690  LOCATE ,T:PRINT "         CALL ERLTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENshieldTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENFNSAVE          "
  70. 700  LOCATE ,T:PRINT "         CLSSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND'           "
  71. 710  LOCATE ,T:PRINT "                                                         "
  72. 720  COLOR 0,7:LOCATE 25,22
  73. 730  PRINT " Press 1 to continue or 0 to EXIT.....";
  74. 740  COLOR 7,0
  75. 750  Z$=INKEY$:IF Z$=""THEN 750
  76. 760  IF Z$="0"THEN CLS:RUN EX$
  77. 770  IF Z$="1"THEN 790
  78. 780  GOTO 750
  79. 790  GOSUB 2350
  80. 800  '
  81. 810  VIEW PRINT 3 TO 24:CLS:VIEW PRINT:LOCATE 3
  82. 820  PRINT " Press number in < > to choose standard units of measure:"
  83. 830  PRINT UL$;
  84. 840  PRINT "   < 1 >  Metric"
  85. 850  PRINT "   < 2 >  U.S.A./Imperial"
  86. 860  K$=INKEY$
  87. 870  IF K$="1"THEN UM=25.4:UM$="mm.":GOTO 910
  88. 880  IF K$="2"THEN UM=1:UM$="in.":GOTO 910
  89. 890  GOTO 860
  90. 900  '
  91. 910  '.....print coax list
  92. 920  VIEW PRINT 3 TO 24:CLS:VIEW PRINT:LOCATE 3
  93. 930  IF UM=1 THEN M$="ft."ELSE M$="m. "
  94. 940  PRINT " No. Type    pF/";M$;"  O.D. CALL";
  95. 950  PRINT " No. Type    pF/";M$;"  O.D. CALL";
  96. 960  PRINT " No. Type    pF/";M$;"  O.D."
  97. 970  PRINT UL$;
  98. 980  LOCATE CSRLIN-1,27:PRINT "INSTR":LOCATE CSRLIN-1,54:PRINT "INSTR"
  99. 990  IF UM=1 THEN CL=1:D$=".###"ELSE CL=0.3048:D$="##.#"
  100. 1000  FOR Z=1 TO 15
  101. 1010  IF LEN(STR$(Z))=3 THEN PRINT STR$(Z)+":";ELSE PRINT " "+STR$(Z)+":";
  102. 1020  PRINT TAB(6);C$(Z,1);TAB(15);USING "###.#";VAL(C$(Z,2))/CL;
  103. 1030  PRINT TAB(22);USING D$;VAL(C$(Z,3))*UM;
  104. 1040  PRINT TAB(27);"CALL"+STR$(Z+15)+":";
  105. 1050  PRINT TAB(33);C$(Z+15,1);TAB(42);USING "###.#";VAL(C$(Z+15,2))/CL;
  106. 1060  PRINT TAB(49)USING D$;VAL(C$(Z+15,3))*UM;
  107. 1070  IF C$(Z+30,1)="-"THEN PRINT " CALL":GOTO 1130
  108. 1080  PRINT TAB(54);"CALL";
  109. 1090  IF Z=15 THEN PRINT "":GOTO 1130
  110. 1100  PRINT STR$(Z+30)+":";
  111. 1110  PRINT TAB(60);C$(Z+30,1);TAB(69);USING "###.#";VAL(C$(Z+30,2))/CL;
  112. 1120  PRINT TAB(76)USING D$;VAL(C$(Z+30,3))*UM
  113. 1130  NEXT Z
  114. 1140  PRINT UL$;
  115. 1150  LOCATE CSRLIN-1,27:PRINT "STEP":LOCATE CSRLIN-1,54:PRINT "STEP"
  116. 1160  IF UM=1 THEN M$="inches"ELSE M$="millimetres"
  117. 1170  PRINT " NOTES: (f) denotes foam dielectric, OD dimensions are in ";M$;"."
  118. 1180  PRINT UL$;
  119. 1190  '
  120. 1200  '.....select type of coax
  121. 1210  INPUT " ENTER: No. from above table to select type of coaxial cable";COAX
  122. 1220  IF COAX>=1 AND COAX <=44 THEN 1250
  123. 1230  BEEP:LOCATE CSRLIN-1:PRINT ER$;:LOCATE CSRLIN-1:GOTO 1210
  124. 1240  '
  125. 1250  '.....display coax specs.
  126. 1260  VIEW PRINT 3 TO 24:CLS:VIEW PRINT:LOCATE 3
  127. 1270  T=10      'tab
  128. 1280  COLOR 7,0
  129. 1290  '
  130. 1300  INPUT "  ENTER: Resonant frequency in MHz ";F
  131. 1310  IF F=0 THEN LOCATE CSRLIN-1:PRINT ER$;:LOCATE CSRLIN-1:GOTO 1300
  132. 1320  W=300/F
  133. 1330  LOCATE CSRLIN-1:PRINT ER$;:LOCATE CSRLIN-1
  134. 1340  COLOR 15,1:LOCATE CSRLIN,T-1
  135. 1350  PRINT " RESONANT FREQUENCY........... ";USING U$;F;
  136. 1360  PRINT " MHz (";USING "###.###";W;:PRINT " metres ) "
  137. 1370  RAD=2*PI*F
  138. 1380  COLOR 15,3:LOCATE CSRLIN,T-1
  139. 1390  PRINT TAB(T-1);" Coaxial cable type........... ";C$(COAX,1);" "
  140. 1400  IF RIGHT$(C$(COAX,1),1)<>")"THEN 1420
  141. 1410  LOCATE CSRLIN-1,T+34:PRINT " (foam dielectric)"
  142. 1420  COLOR 7,0
  143. 1430  CD=VAL(C$(COAX,3))     'coax diameter
  144. 1440  IF UM=1 THEN M$=U$ ELSE M$=V$
  145. 1450  PRINT TAB(T);"Coaxial cable diameter....... ";USING M$;CD*UM;
  146. 1460  PRINT " ";UM$
  147. 1470  CC=VAL(C$(COAX,2))     'coax capacitance per foot
  148. 1480  IF UM=1 THEN CCC=CC:M$="ft."ELSE CCC=CC/0.3048:M$="m."
  149. 1490  PRINT TAB(T);"Coaxial cable capacitance.... ";USING U$;CCC;
  150. 1500  PRINT " pF/";M$
  151. 1510  CC=CC/12               'capacitance per inch
  152. 1520  '
  153. 1530  PRINT "  ENTER: Coil form diameter (";UM$;").....";:INPUT D:D=D/UM
  154. 1540  IF D=0 THEN LOCATE CSRLIN-1:PRINT ER$;:LOCATE CSRLIN-1:GOTO 1530
  155. 1550  A=D+CD                 'mean winding diameter
  156. 1560  A18=18*A
  157. 1570  C40=40*CD
  158. 1580  LOCATE CSRLIN-1:PRINT ER$;:LOCATE CSRLIN-1
  159. 1590  COLOR 15,3:LOCATE CSRLIN,T-1
  160. 1600  IF UM=1 THEN M$=U$ ELSE M$=V$
  161. 1610  PRINT " Coil form diameter........... ";USING M$;D*UM;
  162. 1620  PRINT " ";UM$
  163. 1630  COLOR 7,0
  164. 1640  '
  165. 1650  '.....initial estimate of N
  166. 1660  N0=INT((570/F)*SQR(CD/(A^3*CC))+0.5)
  167. 1670  '
  168. 1680  '.....first calculation loop
  169. 1690  FOR N=N0 TO N0+20 STEP 0.01
  170. 1700   L=A^2*N^2/(A18+C40*N)
  171. 1710   XL=RAD*L
  172. 1720   C=(A*PI*N+1)*CC
  173. 1730   XC=10^6/(RAD*C)
  174. 1740    IF XL>= XC THEN 1770
  175. 1750  NEXT N
  176. 1760  '
  177. 1770  '.....second calculation loop
  178. 1780  FOR N1=(N-0.5)TO(N+0.5) STEP 0.000999999
  179. 1790   L=A^2*N1^2/(A18+C40*N1)
  180. 1800   XL=RAD*L
  181. 1810   C=(A*PI*N1+1)*CC
  182. 1820   XC=10^6/(RAD*C)
  183. 1830    IF XL>= XC THEN 1860
  184. 1840  NEXT N1
  185. 1850  '
  186. 1860  '.....display results
  187. 1870  PRINT TAB(T);"Capacitive reactance (XC).....";USING U$;XC;:PRINT " -"
  188. 1880  PRINT TAB(T);"Inductive reactance (XL)......";USING U$;XL;:PRINT " -"
  189. 1890  PRINT TAB(T);"Inductance (L)............... ";USING U$;L;:PRINT " >H"
  190. 1900  PRINT TAB(T);"Capacitance (C).............. ";USING U$;C;:PRINT " pF"
  191. 1910  COLOR 15,3:LOCATE CSRLIN,T-1
  192. 1920  PRINT " Number of turns.............. ";USING U$;N1;:PRINT " "
  193. 1930  COLOR 7,0
  194. 1940  W=INT((N1+0.5)*CD*100+0.5)/100
  195. 1950  IF UM=1 THEN M$=U$ ELSE M$=V$
  196. 1960  IF UM=25.4 THEN UM=2.54:UM$="cm."
  197. 1970  PRINT TAB(T);"Length of close-wound coil... ";USING M$;W*UM;:PRINT " ";UM$
  198. 1980  RA=W/A
  199. 1990  IF RA<0.4 OR RA>2 THEN COLOR 14,0
  200. 2000  PRINT TAB(T);"Length-to-diameter ratio..... ";USING U$;RA;
  201. 2010  PRINT ":1  (see note below)"
  202. 2020  COLOR 7,0
  203. 2030  SL=INT(A*PI*N1*100+0.5)/100  'shield length
  204. 2040  CL=SL+W+1
  205. 2050  PRINT TAB(T);"Length of untrimmed coax..... ";USING M$;CL*UM;:PRINT " ";UM$
  206. 2060  PRINT TAB(T);"Trimmed shield length........ ";USING M$;SL*UM;:PRINT " ";UM$
  207. 2070  IE=W+0.5
  208. 2080  PRINT TAB(T);"Inner conductor, ";Q$;"in";Q$;" end.... ";USING M$;IE*UM;
  209. 2090  PRINT " ";UM$;" projecting"
  210. 2100  OE=CL-SL-IE
  211. 2110  PRINT TAB(T);"Inner conductor, ";Q$;"out";Q$;" end... ";USING M$;OE*UM;
  212. 2120  PRINT " ";UM$;" projecting"
  213. 2130  EL=SL*0.88+1
  214. 2140  PRINT TAB(T);"Effective Length............. ";USING M$;EL*UM;:PRINT " ";UM$
  215. 2150  PRINT UL$;
  216. 2160  IF RA>2 OR RA<0.4 THEN COLOR 14,0
  217. 2170  PRINT " The length-to-diameter ratio should be between 0.4:1 and 2:1."
  218. 2180  IF RA>=0.4 AND RA<=2 THEN PRINT "":GOTO 2210
  219. 2190  IF RA>2 THEN RA$="larger"ELSE RA$="smaller"
  220. 2200  PRINT " Try a ";RA$;" coil form."
  221. 2210  COLOR 7,0
  222. 2220  PRINT " The Effective Length is the estimated amount that the next-lower-";
  223. 2230  PRINT "frequency leg"
  224. 2240  PRINT " of the trap antenna must be shortened to obtain resonance.";
  225. 2250  GOSUB 2350
  226. 2260  LOCATE 25,14:COLOR 15,2
  227. 2270  PRINT " Do you want to do another calculation?........(y/n) ";
  228. 2280  COLOR 7,0
  229. 2290  Z$=INKEY$
  230. 2300  IF Z$="n"THEN 140
  231. 2310  IF Z$="y"THEN 870
  232. 2320  GOTO 2290
  233. 2330  GOTO 140   'start
  234. 2340  '
  235. 2350  'HARDCOPY
  236. 2360  GOSUB 2470:LOCATE 25,2:COLOR 14,6
  237. 2370  PRINT " Press 1 to print screen, 2 to print screen & ";
  238. 2380  PRINT "advance paper, or 3 to continue.";:COLOR 7,0
  239. 2390  Z$=INKEY$:IF Z$="3"THEN GOSUB 2470:RETURN
  240. 2400  IF Z$="1"OR Z$="2"THEN GOSUB 2470:GOTO 2420
  241. 2410  GOTO 2390
  242. 2420  FOR QX=1 TO 24:FOR QY=1 TO 80
  243. 2430  LPRINT CHR$(SCREEN(QX,QY));
  244. 2440  NEXT QY:NEXT QX
  245. 2450  IF Z$="2"THEN LPRINT CHR$(12)
  246. 2460  GOTO 2360
  247. 2470  LOCATE 25,1:PRINT STRING$(80,32);:RETURN
  248.